Large capacity storage devices, such as the mechanical disk drive, are one of the slowest and most unreliable components in modern computer systems largely due to their mechanical nature. These devices provide high capacity, long-term data storage at a very low cost but typically have long time delays during write operations because of the time it takes to move mechanical parts such as the record heads across the spinning magnetic media. These delays are observed when data is being written to random locations on the media requiring the heads to move frequently. These delays become evident to a computer user when performing operations such as saving files to a disk and give the impression that the computer is slow and unresponsive.
Storage device designers have generally employed write buffers made from fast, volatile, solid state memory to try to minimize the effects of the delays. This technique attains faster write performance but at the expense of the reliability of the data. Data is lost if power to the storage unit fails while there is data in the volatile write buffer that has not been transferred to the long-term non-volatile media. Data lost during a power interruption to a disk can be temporary or permanent but generally it is always distressing to a system user as the loss can waste time and have adverse economic impacts on business.
Thus, there is a need for a technique to eliminate data loss when power to at least a disk drive is lost. In addition, it would also be useful for the technique to be useful in systems which use power cycling as an intentional method of saving power in a computer system. The present invention addresses the aforementioned needs and solves them with additional advantages as expressed herein.